// RAP [rh] Disabled MultiPageEditor as it is deprecated ///******************************************************************************* // * Copyright (c) 2000, 2006 IBM Corporation and others. // * All rights reserved. This program and the accompanying materials // * are made available under the terms of the Eclipse Public License v1.0 // * which accompanies this distribution, and is available at // * http://www.eclipse.org/legal/epl-v10.html // * // * Contributors: // * IBM Corporation - initial API and implementation // *******************************************************************************/ //package org.eclipse.ui.part; // //import java.util.ArrayList; //import java.util.Iterator; //import java.util.List; // //import org.eclipse.swt.SWT; //import org.eclipse.swt.events.SelectionAdapter; //import org.eclipse.swt.events.SelectionEvent; //import org.eclipse.swt.widgets.Composite; //import org.eclipse.swt.widgets.Control; //import org.eclipse.swt.widgets.TabFolder; // ///** // * Abstract superclass of all multi-page workbench editors. // * <p> // * This class should be subclassed by clients wishing to define new // * multi-page editor. // * </p> // * <p> // * Subclasses must implement the following methods: // * <ul> // * <li><code>createPartControl</code> - to create the view's controls </li> // * <li><code>setFocus</code> - to accept focus</li> // * <li><code>isDirty</code> - to decide whether a significant change has // * occurred</li> // * <li><code>doSave</code> - to save contents of editor</li> // * <li><code>doSaveAs</code> - to save contents of editor</li> // * </ul> // * </p> // * <p> // * Subclasses may extend or reimplement the following methods as required: // * <ul> // * <li><code>setInitializationData</code> - extend to provide additional // * initialization when editor extension is instantiated</li> // * <li><code>init(IEditorSite,IEditorInput)</code> - extend to provide // * additional initialization when editor is assigned its site</li> // * <li><code>isSaveOnCloseNeeded</code> - override to control saving</li> // * <li><code>isSaveAsAllowed</code> - override to control saving</li> // * <li><code>gotoMarker</code> - reimplement to make selections based on // * markers</li> // * <li><code>dispose</code> - extend to provide additional cleanup</li> // * <li><code>getAdapter</code> - reimplement to make their editor // * adaptable</li> // * </ul> // * </p> // * // * @deprecated Use the class <code>MultiPageEditorPart</code> instead // */ //public abstract class MultiPageEditor extends EditorPart { // private List syncVector; // // private TabFolder tabFolder; // // /** // * Creates a new multi-page editor. // * // * @deprecated Use the class <code>MultiPageEditorPart</code> instead // */ // public MultiPageEditor() { // super(); // } // // /** // * Adds a synchronized pagebook to this editor. Once added, the // * visible page of the pagebook and the visible page of the editor // * will be synchronized. // * // * @param pageBook the pagebook to add // */ // protected void addSyncroPageBook(PageBook pageBook) { // // Add the page. // if (syncVector == null) { // syncVector = new ArrayList(1); // } // syncVector.add(pageBook); // // // Set the visible page. // syncPageBook(pageBook); // } // // /** // * The <code>MultiPageEditor</code> implementation of this <code>IWorkbenchPart</code> // * method creates a <code>TabFolder</code> control. // */ // public void createPartControl(Composite parent) { // tabFolder = new TabFolder(parent, SWT.NONE); // tabFolder.addSelectionListener(new SelectionAdapter() { // public void widgetSelected(SelectionEvent e) { // sync(); // } // }); // } // // /** // * Returns this editor's workbook. // * // * @return the editor workbook // */ // protected TabFolder getFolder() { // return tabFolder; // } // // /** // * Indicates that a page change has occurred. Updates the sync vector. // */ // protected void onPageChange() { // if (syncVector != null) { // Iterator itr = syncVector.iterator(); // while (itr.hasNext()) { // PageBook pageBook = (PageBook) itr.next(); // syncPageBook(pageBook); // } // } // } // // /** // * Removes a synchronized pagebook from this editor. // * // * @param pageBook the pagebook to remove // * @see #addSyncroPageBook(PageBook) // */ // protected void removeSyncroPageBook(PageBook pageBook) { // if (syncVector != null) { // syncVector.remove(pageBook); // } // pageBook.dispose(); // } // // /** // * Synchronizes each registered pagebook with the editor page. // */ // protected void sync() { // if (syncVector != null) { // Iterator itr = syncVector.iterator(); // while (itr.hasNext()) { // PageBook pageBook = (PageBook) itr.next(); // syncPageBook(pageBook); // } // } // } // // /** // * Sets the visible page of the given pagebook to be the same as // * the visible page of this editor. // * // * @param pageBook a pagebook to synchronize // */ // protected void syncPageBook(PageBook pageBook) { // int pos = tabFolder.getSelectionIndex(); // Control children[] = pageBook.getChildren(); // int size = children.length; // if (pos < size) { // pageBook.showPage(children[pos]); // } // } //}